The advent of network applications, in many ways, has changed the software industry significantly. In network applications, a user utilizing either a client system or a web browser software package may access the network application over an internet connection, connecting the user's client with an application server. Two huge impacts were realized with the advent of network applications. One was the near annihilation of having to distribute applications via various media and physical delivery, and another impact was the ease in updating and maintaining the applications. Rather than having to redistribute new versions of the application, the application can be updated on the internet server and subsequent invocations of the application automatically operate the updated version.
A huge issue that must be dealt with in the software industry is customization of an application for a particular business or other uses. Just like any mass produced and/or distributed market, customization either cuts into the profits or requires a price increase. In the software industry, this phenomenon exits for media delivered applications as well as web based applications. To provide customized network applications, multiple instances of the application must exist, be maintained and utilize server storage and processing resources. What is needed in the art is a technique to provide customized features for application clients that can alleviate the maintenance issues involved in maintaining multiple versions of customized applications.